package com.qububu.emporium.goods.service.impl;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.qububu.db.dao.GoodsInfoDao;
import com.qububu.emporium.goods.dto.GoodsAboutDto;
import com.qububu.emporium.goods.dto.GoodsInfoDto;
import com.qububu.emporium.goods.service.GoodsService;

/**
 * @功能  菜品业务处理 
 * 
 * @详情
 * 
 * */
@Service
public class GoodsServiceImpl implements GoodsService{

	@Resource
	private GoodsInfoDao goodsInfoDao; 
	/*注意, goodsInfoDao这个名字和配置文件中的
	 * <bean id="goodsInfoDao" class="com.qububu.db.dao.impl.GoodsInfoDaoImpl">
	 *  <property name="dataSource" ref="dataSource"></property>
	 * </bean>
	 * id名必须一致
	 * */

	/**
	 * @功能 添加菜品到数据库
	 * @author LH
	 * @param GoodsInfoDto 菜品的具体信息
	 */
	public void doAddGoods(GoodsInfoDto goodsInfo) {
		goodsInfoDao.doAddGoodsInfo(goodsInfo);
	}

	/**
	 * @功能 修改菜品
	 * @author LH
	 * @param GoodsInfoDto 修改后菜品的信息
	 */
	public boolean doUpdateGoods(GoodsInfoDto goodsInfo) {
		goodsInfoDao.doUpdateGoods(goodsInfo);
		
		return true;
	}
	
	/**
	 * @功能 删除菜品
	 * @author LH
	 * @param goodsId 菜品id
	 */
	public boolean doDeleteGoods(String goodsId) {
		goodsInfoDao.doDeleteGoods(goodsId);
		
		return true;
	}
	
	/**
	 * @author HQ
	 * @功能 根据商品的id查找商品的详细信息
	 * */
	public GoodsInfoDto getGoodsInfoById(String goodsId) {
		
		GoodsInfoDto goodsInfoDto = goodsInfoDao.getGoodsInfoById(goodsId);
		
		return goodsInfoDto;
	}
	
	/**
	 * @author ZCW
	 * @功能 根据大小类型的ID得到对应类型的的商品列表
	 * @param bigTypeId 商品大的类别id
	 * @param littleTypeId 商品细分类ID
	 * 
	 * @return Map<String, Object> 根据类型查出的商品列表
	 * */
	public List<GoodsAboutDto> getGoodsListByType(int goodsType) {
		
		List<GoodsAboutDto> goodsList = goodsInfoDao.getGoodsListByType(goodsType);
		
		return goodsList;
	}

	public void doChangeGoodsStatus(String goodsId, int goodsStatus) {
		goodsInfoDao.doChangeGoodsStatus(goodsId, goodsStatus);
	}

}
